<?php

namespace common\models;

use Yii;

/**
 * This is the model class for table "{{%order_log}}".
 *
 * @property int $id
 * @property int|null $type 类型 0:会员 1:商家
 * @property int|null $handle_id 操作人id
 * @property int|null $order_id 订单id
 * @property string|null $action 动作
 * @property string|null $content 内容
 * @property string|null $create_time 创建时间
 * @property string|null $update_time 修改时间
 */
class OrderLog extends BaseModel
{
    /**
     * {@inheritdoc}
     */
    public static function tableName()
    {
        return '{{%order_log}}';
    }

    /**
     * {@inheritdoc}
     */
    public function rules()
    {
        return [
            [['type', 'handle_id', 'order_id'], 'integer'],
            [['action', 'content'], 'string'],
            [['create_time', 'update_time'], 'safe'],
            [['id'], 'unique'],
        ];
    }

    /**
     * {@inheritdoc}
     */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'type' => '类型 0:会员 1:商家',
            'handle_id' => '操作人id',
            'order_id' => '订单id',
            'action' => '动作',
            'content' => '内容',
            'create_time' => '创建时间',
            'update_time' => '修改时间',
        ];
    }

    /**
     * 添加订单日志
     * @param $handle_id 操作人id
     * @param $order_id 订单id
     * @param $action 活动
     * @param string $content 内容
     * @param int $type 类型
     * @return bool
     */
    public static function addLog($handle_id, $order_id, $action, $content = '', $type = 1)
    {
        $model = new self();
        $model->type = $type;
        $model->handle_id = $handle_id;
        $model->order_id = $order_id;
        $model->action = $action;
        $model->content = $content ?? $action;
        $model->create_time = date('Y-m-d H:i:s');
        $model->update_time = date('Y-m-d H:i:s');
        return $model->save();
    }
}
